import service from "@/utils/request";

const ReportApi = {
  addReport: function(data) {
    // 单个新增
    return service.post("report", data);
  },
  editReport: function(data) {
    // 单个编辑
    return service.put("report", data);
  },
  deleteReport: function(data) {
    // 修改单个状态
    return service.delete("report", { params: data });
  },
  getReport: function(data) {
    // 获取单个信息
    return service.get("report", { params: data });
  },
  getReportsList: function(data) {
    // 查看列表
    return service.get("reports", { params: data });
  },
  getReportCount: function(data) {
    // 获取报告单数量
    return service.get("report/count", { params: data });
  },
  checkReportAdd: function(data) {
    // 新增检查
    return service.post("report/addCheck", data);
  },
  checkoutUpdateReport: function(data) {
    // 判断是否可以修改当月25号以及之前的报告单
    return service.get("report/checkoutUpdateReport",  { params: data });
  },
  getReportReAccept: function(data) {
    // 医检重新接受报告单
    return service.get("report/reAccept", { params: data });
  },
  getReportback: function(data) {
    // 撤回报告单
    return service.get("report/back", { params: data });
  },
  getReportLink: function(data) {
    // 联系医生
    return service.get("report/link", { params: data });
  },
  getReportPrint: function(data) {
    // 打印报告单
    return service.get("report/print", { params: data });
  },
  getReportBatchPrint: function(data) {
    // 批量打印报告单
    return service.get("report/batchPrint", { params: data });
  },
  printReportCode: function(data) {
    // 批量打印报告单条码号
    return service.get("report/printReportCode", { params: data });
  },
  batchCreateResult: function(data) {
    // 批量生成报告单结果
    return service.put("report/batchCreateResult", data);
  },
  getReportExport: function(data) {
    // 导出excal表格
    return service.get("report/export", {params:data, responseType: "blob"});
  },
  //批量导入Excal表格
  excelImportAddReport: function(data) {
    return service.post("report/excelImportAddReport", data);
  },
  updateReportState: function(data) {
    // 更新报告单状态
    return service.put("report/updateState", data);
  },
  addReportPdf: function(data) {
    // 上传pdf
    return service.put("report/addPdf", data);
  },
  addReportMerge: function(data) {
    // 上传报告单 Merge 信息
    return service.post("report/mergeReport", data);
  },
  getReportCounts: function(data) {
    // 查询未打印报告单数量+今日新增报告单数量+医检待处理报告单数量
    return service.get("report/counts", { params: data });
  },
  getUnPrintReportCount: function(data) {
    // 获取未打印的报告单总数
    return service.get("report/unPrintCount", { params: data });
  },
  allReportPrint: function(data) {
    // 一键打印多有报告单
    return service.get("report/allPrint", { params: data });
  },
  checkReportItem(data) {
    // 新增报告单时-判断平台/医检条码号是否存在，并返回已存在的报告单列表
    return service.post("report/addItem", data);
  },
  batchAddReport(data) {
    // BatchAddReport - 组件api - 批量新增
    return service.post("report/batchAddReport", data);
  },
  batchAddCheck(data) {
    // BatchAddReport - 组件api - 批量新增校验
    return service.post("report/batchAddCheck", data);
  },
  batchEditCollect(data) {
    // BatchEditCollect - 组件api
    return service.put("report/collect/batchUpdate", data);
  },
  refreshReportItem(data) {
    // 刷新项目
    return service.get("report/updateAllItemName", { params: data });
  },
  exportPreCode(data) {
    // 导出预制码
    return service.get("report/exportPreCode", { params: data });
  },
  financeRemark(data){
    // 财务备注
    return service.put("/report/setFinanceRemark",data)
  },
  getFinanceRemark(data){
    // 获取财务备注
    return service.get("/report/getFinanceRemark",{params:data})
  },
  cancelReport(data){
    // 医检项目取消
    //return service.post("/ljzyy/deleteReportByApplyId",data)
    return service.get("/report/cancelReport",{params:data})
  },
  batchUpdateHos(data){
    // 医检项目取消
    return service.put("/report/batchUpdateHos",data)
  },
  checkoutLicense(data){
    // 检验是否有营业执照
    return service.get("/natural/checkoutLicense",{params:data})
  },

  getOperatorList(data){
    // 检验是否有营业执照
    return service.get("/reportOperation/listData",{params:data})
  },

};

export default ReportApi;
